using System;
using System.Collections.Generic;
using System.Text;

namespace Colman.Rpg.Messaging
{
    /// <summary>
    /// Represents a request from the client of any of the stages of player vs. player fight requests.
    /// </summary>
    [Serializable]
    public class FightPlayerRequest : RequestMessage
    {
        /// <summary>
        /// Creates a new instance of <see cref="FightPlayerRequest" />.
        /// </summary>
        /// <param name="opponent">The name of the opponent.</param>
        /// <param name="requestOperation">The operation's stage at the request.</param>
        public FightPlayerRequest(string opponent, PvpFightRequestStage requestOperation)
        {
            this.opponent = opponent;
            this.requestOperation = requestOperation;            
        }

        #region string Opponent { get; } (opponent)
        private string opponent;

        /// <summary>
        /// Gets the name of the opponent.
        /// </summary>
        public string Opponent
        {
            [System.Diagnostics.DebuggerStepThrough]
            get
            {
                return this.opponent;
            }
        }
        #endregion

        #region PvpFightRequestStage RequestOperation { get; } (requestOperation)
        private PvpFightRequestStage requestOperation;

        /// <summary>
        /// Gets the operation's stage at the request.
        /// </summary>
        public PvpFightRequestStage RequestOperation
        {
            [System.Diagnostics.DebuggerStepThrough]
            get
            {
                return this.requestOperation;
            }
        }
        #endregion
    }
}
